package com.jumper.study.db.model;

import java.io.Serializable;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.jumper.study.common.api.OrderStatusCode;

//订单状态变化
@TableName("order_status")
public class OrderStatus implements Serializable {
    @TableId(type = IdType.AUTO)
    private Long id;

    @TableField(updateStrategy = FieldStrategy.NEVER)
    private Long orderId;

    @TableField(updateStrategy = FieldStrategy.NEVER)
    private Long adminId;

    @TableField(exist = false)
    private String adminName;

    @TableField(updateStrategy = FieldStrategy.NEVER)
    private OrderStatusCode preStatus;

    @TableField(updateStrategy = FieldStrategy.NEVER)
    private OrderStatusCode status;

    @TableField(updateStrategy = FieldStrategy.NEVER)
    private Long operateId;

    @TableField(insertStrategy = FieldStrategy.NEVER, updateStrategy = FieldStrategy.NEVER)
    private LocalDateTime createdAt;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getOrderId() {
        return orderId;
    }

    public void setOrderId(Long orderId) {
        this.orderId = orderId;
    }

    public Long getAdminId() {
        return adminId;
    }

    public void setAdminId(Long adminId) {
        this.adminId = adminId;
    }

    public String getAdminName() {
        return adminName;
    }

    public void setAdminName(String adminName) {
        this.adminName = adminName;
    }

    public OrderStatusCode getPreStatus() {
        return preStatus;
    }

    public void setPreStatus(OrderStatusCode preStatus) {
        this.preStatus = preStatus;
    }

    public OrderStatusCode getStatus() {
        return status;
    }

    public void setStatus(OrderStatusCode status) {
        this.status = status;
    }

    public Long getOperateId() {
        return operateId;
    }

    public void setOperateId(Long operateId) {
        this.operateId = operateId;
    }

    public LocalDateTime getCreatedAt() {
        return createdAt;
    }
}
